home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1995 #2 / Amiga Plus CD - 1995 - No. 2.iso / internet / faq / englisch / nonlinearprogramming < prev    next >
Encoding:
Text File  |  1995-04-11  |  27.7 KB  |  618 lines

  1. Posted-By: auto-faq 2.4
  2. Archive-name: nonlinear-programming-faq
  3. Last-modified: March 1, 1995
  4.  
  5. Nonlinear Programming - Frequently Asked Questions List 
  6. +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  7. Posted monthly to Usenet newsgroup sci.op-research 
  8. World Wide Web version: 
  9. http://www.skypoint.com/subscribers/ashbury/nonlinear-programming-faq.html
  10. Plain-text version: 
  11. ftp://rtfm.mit.edu/pub/usenet/sci.answers/nonlinear-programming-faq
  12. Date of this version: March 1, 1995 
  13. +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  14.  
  15. "A couple of months in the laboratory can save a couple of hours in
  16. the library." -- Author unknown 
  17.  
  18.  o Q1. "What is Nonlinear Programming?" 
  19.  o Q2. "What software is there for nonlinear optimization?" 
  20.  o Q3. "I wrote an optimization code. Where are some test models?" 
  21.  o Q4. "What references are there in this field?" 
  22.  o Q5. "How do I access the Netlib server? 
  23.  o Q6. "Who maintains this FAQ list?" 
  24.  
  25. See also the related Linear Programming FAQ. 
  26.  
  27.  
  28. Q1. "What is Nonlinear Programming?" 
  29. +++++++++++++++++++++++++++++++++++++
  30.  
  31. A: A Nonlinear Program (NLP) is a problem that can be put into
  32. the form 
  33.  
  34.     minimize   F(x)
  35.     subject to g (x)  = 0     for i=1,...,m1       where m1 >= 0
  36.                 i
  37.                h (x) >= 0    for j=m1+1,...,m      where m >= m1
  38.                 j
  39.  
  40. That is, there is one scalar-valued function F, of several variables
  41. (x here is a vector), that we seek to minimize subject (perhaps) to
  42. one or more other such functions that serve to limit or define the
  43. values of these variables. F is called the "objective function", while
  44. the various other functions are called the "constraints". (If
  45. maximization is sought, it is trivial to do so, by multiplying F by
  46. -1.) 
  47.  
  48. Because NLP is a difficult field, researchers have identified special
  49. cases for study. A particularly well studied case is the one where
  50. all the constraints g and h are linear. The name for such a problem,
  51. unsurprisingly, is "linearly constrained optimization". If, as well,
  52. the objective function is quadratic at most, this problem is called
  53. Quadratic Programming (QP). A further special case of great
  54. importance is where the objective function is entirely linear; this is
  55. called Linear Programming (LP) and is discussed in a separate 
  56. FAQ list. Another important special case, called unconstrained
  57. optimization, is where there are no constraints at all. 
  58.  
  59. One of the greatest challenges in NLP is that some problems
  60. exhibit "local optima"; that is, spurious solutions that merely
  61. satisfy the requirements on the derivatives of the functions. Think
  62. of a near-sighted mountain climber in a terrain with multiple
  63. peaks, and you'll see the difficulty posed for an algorithm that tries
  64. to move from point to point only by climbing uphill. Algorithms
  65. that propose to overcome this difficulty are termed "Global
  66. Optimization". 
  67.  
  68. The word "Programming" is used here in the sense of "planning";
  69. the necessary relationship to computer programming was
  70. incidental to the choice of name. Hence the phrase "NLP program"
  71. to refer to a piece of software is not a redundancy, although I tend
  72. to use the term "code" instead of "program" to avoid the possible
  73. ambiguity. 
  74.  
  75.  
  76. Q2. "What software is there for nonlinear optimization?" 
  77. +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  78.  
  79. A: It's unrealistic to expect to find one general NLP code that's
  80. going to work for every kind of nonlinear model. Instead, you
  81. should try to select a code that fits the problem you are solving. If
  82. your problem doesn't fit in any category except "general", or if you
  83. insist on a globally optimal solution (except when there is no
  84. chance of encountering multiple local optima), you should be
  85. prepared to have to use a method that boils down to exhaustive
  86. search, i.e., you have an intractable problem. 
  87.  
  88. Several of the commercial LP codes referenced in the LP FAQ
  89. have specialized routines, particularly QP. The ones that I know of
  90. that have some form of QP are: LINDO, KORBX, LOQO,
  91. MPS-III, OSL, and PC-PROG. Of course, you don't generally get
  92. source code when you license one of these products; but many of
  93. them can be licensed as a callable library of solver routines. Many
  94. general nonlinear problems can be solved (or at least confronted)
  95. by application of a sequence of LP or QP approximations. 
  96.  
  97. There are ACM TOMS routines for QP, #559 and #587, available
  98. in ftp://netlib2.cs.utk.edu/toms/559 and
  99. ftp://netlib2.cs.utk.edu/toms/587 
  100.  
  101. There is a directory on Netlib, ftp://netlib2.cs.utk.edu/opt,
  102. containing a collection of optimization routines. The last time I
  103. checked, I saw 
  104.  
  105.  o "praxis" (unconstrained optimization, without requiring
  106.    derivatives) 
  107.  o "tn" (Newton method for unconstrained or simple-bound
  108.    optimization) 
  109.  o "ve08" (optimization of unconstrained separable function). 
  110.  o "simann" (unconstrained optimization using Simulated
  111.    Annealing) 
  112.  o "subplex"(unconstrained optimization, general multivariate
  113.    functions) 
  114.  o "donlp" (differentiable nonlinear optimization, dense linear
  115.    algebra) 
  116.  o "hooke" (Hooke and Jeeves method) 
  117.  
  118. A package called conmin (unrelated to the one by Vanderplaats and
  119. Associates), is available at ftp://anusf.anu.edu.au/mld900/conmin.
  120. Any comments should be sent to Murray Dow at
  121. m.dow@anusf.anu.edu.au. The author states that it is reliable but
  122. not state of the art; surpassed, for instance, by FSQP. 
  123.  
  124. Will Naylor (naylor@mti.sgi.com) has a package written in ANSI
  125. C that uses conjugate gradient methods, which he will supply to
  126. anybody who requests by e-mail. 
  127.  
  128. NSWC Library of Mathematical Subroutines has a subroutine to
  129. minimize a function of n variables (OPTF) and a subroutine to
  130. solve a system of nonlinear equations (HBRD). Such routines are
  131. also available in NMS library [Kahaner]. 
  132.  
  133. For nonlinear optimization problems with both continuous and
  134. binary variables (MINLP), there is a code called DICOPT++,
  135. available commercially from GAMS Development Corp. Contact
  136. gams@gams.com for more information. (There is a survey article,
  137. "Constrained Nonllinear 0-1 Programming" by Hansen, Jaumard,
  138. and Mathon, in the ORSA Journal on Computing, 5, 2, Spring
  139. 1993.) 
  140.  
  141. While they are not NLP solvers, per se, attention should be given to
  142. modeling languages like GAMS (Scientific Press), LINGO
  143. (LINDO Systems), AIMMS (Paragon Decision Technology) and
  144. AMPL (information is in netlib/opt/ampl.info.Z on the netlib
  145. server, or send email to ampl@research.att.com - see also the
  146. WWW home page for AMPL at
  147. ftp://netlib.att.com/netlib/att/cs/home/ampl/ampl.html). These
  148. products have links to various solvers, commercial and otherwise.
  149. See the Linear Programming FAQ for details on contacting the
  150. vendors of these products. 
  151.  
  152. Microsoft Excel 4.0 and above has a function called "Solver",
  153. based on GRG2. This product runs on PC and Macintoshes. The
  154. attraction of this approach is that models can be built using the
  155. spreadsheet. I am told that this function can handle 200 independent
  156. variables and 500 constraints. 
  157.  
  158. Information related to Semidefinite Programming is at
  159. ftp://orion.uwaterloo.ca/pub/henry/teaching/co769g/readme.html,
  160. which includes a pointer to some software. There is a code by
  161. Lieven Vandenberghe & Stephen Boyd at 
  162. ftp://isl.stanford.edu/pub/boyd/semidef_prog for semidefinite
  163. programming which can be used to solve many nonlinear, convex
  164. optimization problems; includes full C source (which calls
  165. LAPACK), which can be used directly or via matlab mex file
  166. interfaces, matlab examples, and documentation. 
  167.  
  168. For difficult problems like Global Optimization, methods like
  169. Genetic Algorithms and Simulated Annealing have been studied
  170. heavily. I'm not well-versed in any of these topics, and I have been
  171. assured of contradictory things by different experts. A particular
  172. point of controversy is whether there is a proof of optimality for
  173. practical variants of such algorithms for Global Optimization
  174. problems, and I take no particular stand on the issue (since for
  175. difficult problems such a proof may be of academic interest only).
  176. Even moreso than usual, I say "let the user beware" when it comes
  177. to code. There's a (compressed) Postscript file available at
  178. ftp://beethoven.cs.colostate.edu/pub/TechReports/1993/tr-103.ps.Z,
  179. containing a forty-page introduction to the topic of GA. The
  180. Usenet newsgroup on GA, comp.ai.genetic, has a FAQ on the topic,
  181. otherwise known as "The Hitch-Hiker's Guide to Evolutionary
  182. Computation", available at
  183. ftp://rtfm.mit.edu/pub/usenet/news.answers/ai-faq/genetic. 
  184. Genetic Algorithm code can be obtained at
  185. ftp://cs.ucsd.edu/pub/GAucsd. Simulated Annealing code for NLP
  186. and other problems is available at
  187. ftp://ftp.alumni.caltech.edu/pub/ingber - contact Lester Ingber
  188. (ingber@alumni.caltech.edu) for more info. A code called SDSC
  189. EBSA (Ensemble Based Simulated Annealing) is available at
  190. ftp://ftp.sdsc.edu/pub/sdsc/math/Ebsa, or contact Richard Frost
  191. (frost@sdsc.edu). And there is the simann code available on Netlib,
  192. mentioned above. For other ideas on Global Optimization, you may
  193. want to consult one of the books given in the section on references ,
  194. such as [Nemhauser] or one of the ones with "Global" in its title.
  195. There is also the Journal of Global Optimization, published by
  196. Kluwer. 
  197.  
  198. Another technique that should be considered is "Constraint
  199. Programming" (sometimes embedded in Prolog-like languages to
  200. form "Constraint Logic Programming"). There is a Usenet
  201. newsgroup, comp.constraints, devoted to the topic. A WWW page
  202. exists at
  203. http://web.cs.city.ac.uk/archive/constraints/constraints.html. Or
  204. you can access the FAQ at
  205. //ftp.cs.city.ac.uk/pub/constraints/constraints-faq. The maintainer
  206. of that FAQ, Michael Jampel (jampel@cs.city.ac.uk), suggests CLP
  207. is best suited for small problems that don't fit typical OR
  208. categories (LP, QP, etc.), 
  209.  
  210.    "especially if there is indeterminism / incompleteness.
  211.    Also, if you wish to mix numeric with non-numeric
  212.    domains.... Also, if you need to do a lot of encoding of your
  213.    problem to get it to fit into the OR technique; it may be
  214.    better to use a relatively slow CSP technique on 10
  215.    variables rather than a super-fast OR technique on 2^10
  216.    variables." 
  217.  
  218. Here is a summary of other NLP codes mentioned in newsgroups in
  219. the past few years, sorted alphabetically. Perhaps someone will
  220. volunteer to organize these references more usefully. 
  221.  
  222.  o Amoeba - Numerical Recipes 
  223.  o Brent's Method - Numerical Recipes 
  224.  o CONMIN - Vanderplaats, Miura & Associates, Colorado
  225.    Springs, Colorado, 719-527-2691. 
  226.  o CONOPT - large-scale GRG code, by Arne Drud.
  227.    Available with GAMS, AIMMS, or AMPL (modeling
  228.    languages - see LP FAQ) or standalone. 
  229.  o DFPMIN - Numerical Recipes (Davidon-Fletcher-Powell)
  230.  o Eureka - Borland Software (for IBM PC class of machines)
  231.  o FSQP/CFSQP (Fortran/C) - Contact Andre Tits,
  232.    andre@src.umd.edu. Free of charge to academic users.
  233.    Solves general nonlinear constrained problems, including
  234.    constrained minimax problems. CFSQP (C code) includes a
  235.    scheme to efficently handle problems with many constraints
  236.    (e.g., discretized semi-infinite problems). 
  237.  o GENOCOP - Solves linearly constrained problems via a
  238.    Genetic algorithm, available at ftp://unccsun.uncc.edu.
  239.    Author: Zbigniew Michalewicz, zbyszek@mosaic.uncc.edu.
  240.  o GINO - LINDO Systems, Chicago, IL 
  241.  o GRG2 - Leon Lasdon, University of Texas, Austin TX 
  242.  o Harwell Library routines 
  243.     o VF01: based on R. Fletcher algorithm 
  244.     o VF02: based on M. Powell alogorithm 
  245.     o VF03: using "watchdog techniques" for line search.
  246.       An improved version of VF02. 
  247.     o VF04: Automatically calculate 1st order derivatives,
  248.       VF03 ia required to provide the derivatives. 
  249.  o Hooke and Jeeves algorithm - see reference below. A
  250.    version is available at ftp://netlib2.cs.utk.edu/opt/hooke.c,
  251.    and may be useful because it handles nondifferentiable
  252.    and/or discontinuous functions. 
  253.  o IMSL routine UMINF and UMIDH. 
  254.  o LANCELOT - large-scale NLP. See the book by Conn et
  255.    al. in the references section. For peaceful purposes only. For
  256.    information on licensing this package, see the email
  257.    addresses for Conn, Toint, or Gould, in the entry for CUTE,
  258.  o LSSOL - Stanford Business Software Inc. (See MINOS)
  259.    This code does convex (positive semi-definite) QP. Is the
  260.    QP solver used in current versions of NPSOL. 
  261.  o MATLAB Optimization Toolbox - The Mathworks, Inc.
  262.    508-653-1415. Handles various nonlinear optimization
  263.    problems. Data sheet available in postscript format at
  264.    ftp://ftp.mathworks.com/pub/product-info/optimization.ps
  265.    Email address: info@mathworks.com . 
  266.  o MINOS - Stanford Business Software Inc., 415-962-8719.
  267.    Mailing address: 2672 Bayshore Parkway, Suite 304,
  268.    Mountain View, CA 94043. Email:
  269.    mike@sol-michael.stanford.edu. This large-scale code is
  270.    often used by researchers as a "benchmark" for others to
  271.    compare with. 
  272.  o MINPACK I and II - Contact Jorge More',
  273.    more@mcs.anl.gov, or check
  274.    ftp://netlib2.cs.utk.edu/minpack. Solves dense nonlinear
  275.    least-squares problems. 
  276.  o NAG Library routine E04UCF (essentially the same as
  277.    NPSOL). 
  278.  o Nelder and Mead's method - Numerical Recipes, also 
  279.    Barabino. 
  280.  o NOVA - DOT Products, Houston TX 
  281.  o NPSOL - Stanford Business Software Inc. (See MINOS) 
  282.  o QLD - Contact: Klaus.Schittkowski@uni-bayreuth.de.
  283.    Solves Quadratic Programming and other nonlinear
  284.    problems. 
  285.  o QPSOL - see LSSOL. 
  286.  o SLATEC - Quadratic solvers dbocls, dlsei, and other
  287.    routines. National Energy Software Center, 9700 Cass Ave.,
  288.    Argonne, Illinois 60439. Also available at
  289.    ftp://netlib2.cs.utk.edu/slatec 
  290.  
  291. An extremely useful book is the "Optimization Software Guide,"
  292. by Jorge More' and Stephen Wright, from SIAM Books. Call
  293. 1-800-447-7426 to order ($24.50, less ten percent if you are a
  294. SIAM member). It contains references to 75 available software
  295. packages, and goes into more detail than is possible in this FAQ. 
  296.  
  297. I would be extremely interested in hearing of people's experiences
  298. with the codes they learn about from reading this FAQ. (Note, I'm
  299. looking for more-or-less independent confirmation or denial of
  300. the practicality of codes.) 
  301.  
  302.  
  303. Q3. "I wrote an optimization code. Where are some test models?" 
  304. +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  305.  
  306. A: There are various test sets for NLP. Among those I've seen
  307. mentioned are: 
  308.  
  309.  o A. Corana et al, "Minimizing Multimodal Functions of
  310.    Continuous Variables with the Simulated Annealing
  311.    Algorithm," ACM Transactions on Mathematical Software,
  312.    Vol. 13, No. 3, Sept 1987, pp. 262-280. (Difficult
  313.    unconstrained nonlinear models) 
  314.  o C.A. Floudas and P.M. Pardalos, A Collection of Test
  315.    Problems for Constrained Global Optimization Algorithms,
  316.    Springer-Verlag, Lecture Notes in Computer Science 455
  317.    (1990). 
  318.  o W.W. Hager, P.M. Pardalos, I.M. Roussos, and H.D.
  319.    Sahinoglou, Active Constraints, Indefinite Quadratic
  320.    Programming, and Test Problems, Journal of Optimization
  321.    Theory and Applications Vol. 68, No. 3 (1991), pp.
  322.    499-511. 
  323.  o J. Hasselberg, P.M. Pardalos and G. Vairaktarakis, Test case
  324.    generators and computational results for the maximum
  325.    clique problem, Journal of Global Optimization 3 (1993),
  326.    pp. 463-482. 
  327.  o B. Khoury, P.M. Pardalos and D.-Z. Du, A test problem
  328.    generator for the steiner problem in graphs, ACM
  329.    Transactions on Mathematical Software, Vol. 19, No. 4
  330.    (1993), pp. 509-522. 
  331.  o Y. Li and P.M. Pardalos, Generating quadratic assignment
  332.    test problems with known optimal permutations,
  333.    Computational Optimization and Applications Vol. 1, No. 2
  334.    (1992), pp. 163-184. 
  335.  o P. Pardalos, "Generation of Large-Scale Quadratic
  336.    Programs", ACM Transactions on Mathematical Software,
  337.    Vol. 13, No. 2, p. 133. 
  338.  o P.M. Pardalos, Construction of test problems in quadratic
  339.    bivalent programming, ACM Transactions on
  340.    Mathematical Software, Vol. 17, No. 1 (1991), pp. 74-87. 
  341.  o P.M. Pardalos, Generation of large-scale quadratic
  342.    programs for use as global optimization test problems,
  343.    ACM Transactions on Mathematical Software, Vol. 13, No.
  344.    2 (1987), pp. 133-137. 
  345.  o F. Schoen, "A Wide Class of Test Functions for Global
  346.    Optimization", J. of Global Optimization, 3, 133-137,
  347.    1993, with C source code available at
  348.    ftp://ghost.dsi.unimi.it/pub/schoen. 
  349.  o publications (referenced in another section of this list) by
  350.    Schittkowski; Hock & Schittkowski; Torn & Zilinskas. 
  351.  
  352. Some of the other publications listed in the references section also
  353. may contain problems that you could use to test a code. 
  354.  
  355. A package called CUTE (Constrained and Unconstrained Testing
  356. Environment) is a set of Fortran subroutines, system tools and test
  357. problems in the area of nonlinear optimization and nonlinear
  358. equations, available at ftp://joyous-gard.cc.rl.ac.uk/pub/cute. or at 
  359. ftp://thales.math.fundp.ac.be/cute. A LaTex formatted manuscript
  360. is included in the distribution file. Download the README file
  361. first and follow the directions contained therein. Questions should
  362. be directed toward any of the package's authors: 
  363.  
  364.  o Ingrid Bongartz bongart@watson.ibm.com 
  365.  o Andy Conn arconn@watson.ibm.com 
  366.  o Nick Gould gould@cerfacs.fr 
  367.  o Philippe Toint pht@math.fundp.ac.be 
  368.  
  369. John Beasley has posted information on his OR-Lib, which
  370. contains various optimization test problems. Send e-mail to
  371. umtsk99@vaxa.cc.imperial.ac.uk to get started. Or have a look in
  372. the Journal of the Operational Research Society, Volume 41,
  373. Number 11, Pages 1069-72. Available at
  374. ftp://mscmga.ms.ic.ac.uk/pub. The only nonlinear models in this
  375. collection at this writing are Quadratic Assignment problems. 
  376.  
  377. A collection of Global Optimization problems resides at 
  378. ftp://fourier.ee.ucla.edu/pub. In this directory, reverse.zip
  379. (reverse.tar.Z) and concave.zip (concave.tar.Z) contain a collection
  380. of test problems for linear reverse convex programs, known as
  381. LRCP and concave minimization problems. For further details, see
  382. the README file in the directory, or contact Khosrow
  383. Moshirvaziri at moshir@ee.ucla.edu. 
  384.  
  385. The modeling language GAMS comes with about 150 test models,
  386. which you might be able to test your code with. The models are in
  387. the public domain according to the vendor, although you need
  388. access to a GAMS system if you want to run them without
  389. modifying the files. The modeling system AIMMS also comes
  390. with a number of test models. 
  391.  
  392. In the journal Mathematical Programming, Volume 61 (1993)
  393. Number 2, there is an article by Calamai et al. that discusses how
  394. to generate QP test models. It gives what seems a very full
  395. bibliography of earlier articles on this topic. The author offers at
  396. the end of the article to send a Fortran code that generates QP
  397. models, if you send email to phcalamai@dial.waterloo.edu. 
  398.  
  399. The paper "An evaluation of the Sniffer Global Optimization
  400. Algorithm Using Standard Test Functions", Roger A.R. Butler and
  401. Edward E. Slaminka, J. Comp. Physics, 99, 28-32, (1992) mentions
  402. the following reference containing 7 functions that were intended
  403. to thwart global minimization algorithms: "Towards Global
  404. Optimization 2", L.C.W. Dixon and G.P. Szego, North-Holland,
  405. 1978. [from Dean Schulze - schulze@asgard.lpl.arizona.edu] 
  406.  
  407.  
  408. Q4. "What references are there in this field?" 
  409. +++++++++++++++++++++++++++++++++++++++++++++++
  410.  
  411. A: What follows here is an idiosyncratic list, a few books that I
  412. like or have been recommended on the net. I have *not* reviewed
  413. them all. I have marked with an arrow ("->") books that received
  414. positive mention in an informal poll on Usenet, regarding good
  415. textbooks for a course on optimization. 
  416.  
  417. General reference 
  418.  
  419.  o Nemhauser, Rinnooy Kan, & Todd, eds, Optimization,
  420.    North-Holland, 1989. (Very broad-reaching, with large
  421.    bibliography. Good reference; it's the place I tend to look
  422.    first. Expensive, and tough reading for beginners.) 
  423.  
  424. Other publications (can someone help classify these more
  425. usefully?) 
  426.  
  427.  o Barabino, et al, "A Study on the Performances of Simplex
  428.    Methods for Function Minimization," 1980 Proceedings of
  429.    the IEEE International Conference on Circuits and
  430.    Computers, (ICCC 1980), pp. 1150-1153. 
  431.  o -> Bazaraa, Shetty, & Sherali, Nonlinear Programming,
  432.    Theory & Applications, Wiley, 1994. 
  433.  o Coleman & Li, Large Scale Numerical Optimization,
  434.    SIAM Books. 
  435.  o Conn, A.R., et al., "LANCELOT: A code for large-scale,
  436.    constrained, NLP", Springer series in computational
  437.    mathematics, 1992. 
  438.  o Dennis & Schnabel, Numerical Methods for Unconstrained
  439.    Optimization and Nonlinear Equations, Prentice Hall, 1983.
  440.  o Du and Sun (eds.), Advances in Optimization and
  441.    Approximation, Kluwer, 1994. 
  442.  o Fiacco & McCormick, Sequential Unconstrained
  443.    Minimization Techniques, SIAM Books. (An old standby,
  444.    given new life by the interior point LP methods.) 
  445.  o Fletcher, R., Practical Methods of Optimization, Wiley,
  446.    1987. (Good reference for Quadratic Programming, among
  447.    other things.) 
  448.  o Floudas & Pardalos, Recent Advances in Global
  449.    Optimization, Princeton University Press, 1992. 
  450.  o Gill, Murray & Wright, Practical Optimization, Academic
  451.    Press, 1981. (An instant NLP classic when it was
  452.    published.) 
  453.  o Himmelblau, Applied Nonlinear Programming,
  454.    McGraw-Hill, 1972. (Contains some famous test
  455.    problems.) 
  456.  o Hock & Schittkowski, Test Examples for Nonlinear
  457.    Programming Codes, Springer-Verlag, 1981. 
  458.  o Hooke & Jeeves, "Direct Search Solution of Numerical and
  459.    Statistical Problems", Journal of the ACM, Vol.8 pp.
  460.    212-229, April 1961. 
  461.  o Horst and Pardalos (eds.), Handbook of Global
  462.    Optimization, Kluwer, 1995. 
  463.  o Horst and Tuy, Global Optimization, Springer-Verlag,
  464.    1993. 
  465.  o Kahaner, Moler & Nash, Numerical Methods and Software,
  466.    Prentice- Hall. 
  467.  o Lau, H.T., A Numerical Library in C for Scientists and
  468.    Engineers, CRC Press, 1994. (Contains a section on
  469.    optimization.) 
  470.  o -> Luenberger, Introduction to Linear and Nonlinear
  471.    Programming, Addison Wesley, 1984. (Updated version of
  472.    an old standby.) 
  473.  o More', "Numerical Solution of Bound Constrained
  474.    Problems", in Computational Techniques & Applications,
  475.    CTAC-87, Noye & Fletcher, eds, North-Holland, 29-37,
  476.    1988. 
  477.  o More' & Toraldo, Algorithms for Bound Constrained
  478.    Quadratic Programming Problems, Numerische
  479.    Mathematik 55, 377-400, 1989. 
  480.  o More' & Wright, "Optimization Software Guide", SIAM,
  481.    1993. 
  482.  o Nocedal, J., summary of algorithms for unconstrained
  483.    optimization in "Acta Numerica 1992". 
  484.  o Pardalos & Wolkowicz, eds., Quadratic Assignment and
  485.    Related Problems, American Mathematical Society,
  486.    DIMACS series in discrete mathematics, 1994. 
  487.  o Powell, M.J.D., "A Fast Algorithm for Nonlinearly
  488.    Constrained Optimization Calculations", Springer-Verlag
  489.    Lecture Notes in Mathematics, vol. 630, pp. 144-157.
  490.    (Implemented in the Harwell Library) 
  491.  o Press, Flannery, Teukolsky & Vetterling, Numerical
  492.    Recipes, Cambridge, 1986. 
  493.  o Schittkowski, Nonlinear Programming Codes,
  494.    Springer-Verlag, 1980. 
  495.  o Schittkowski, More Test Examples for Nonlinear
  496.    Programming Codes, Lecture Notes in Economics and
  497.    Math. Systems 282, Springer 1987. 
  498.  o Torn & Zilinskas, Global Optimization, Springer-Verlag,
  499.    1989. 
  500.  o Wismer & Chattergy, Introduction to Nonlinear
  501.    Optimization, North-Holland, 1978. (Undergrad text) 
  502.  o Wright, M., "Interior methods for constrained
  503.    optimization", Acta Mathematica, Cambridge University
  504.    Press, 1992. (Survey article.) 
  505.  
  506. Simulated Annealing & Genetic Algorithms 
  507.  
  508.  o Davis, L. (ed.), Genetic Algorithms and Simulated
  509.    Annealing, Morgan Kaufmann, 1989. 
  510.  o De Jong, "Genetic algorithms are NOT function
  511.    optimizers" in Foundations of Genetic Algorithms:
  512.    Proceedings 24-29 July 1992, D. Whitley (ed.) Morgan
  513.    Kaufman 
  514.  o Goldberg, D., "Genetic Algorithms in Search,
  515.    Optimization, and Machine Learning", Addison-Wesley,
  516.    1989. 
  517.  o Ingber "Very fast simulated re-annealing" Mathematical
  518.    and Computer Modeling, 12(8) 1989, 967-973 
  519.  o Kirkpatrick, Gelatt & Vecchi, Optimization by Simulated
  520.    Annealing, Science, 220 (4598) 671-680, 1983. 
  521.  o Michalewicz et al., article in volume 3(4) 1991 of the
  522.    ORSA Journal on Computing. 
  523.  o Michalewicz, Z., "Genetic Algorithms + Data Structures =
  524.    Evolution Programs", Springer Verlag, 1992. 
  525.  o Reeves, C.R., ed., Modern Heuristic Techniques for
  526.    Combinatorial Problems, Halsted Press (Wiley). (Contains
  527.    chapters on tabu search, simulated annealing, genetic
  528.    algorithms, neural nets, and Lagrangean relaxation.) 
  529.  
  530. On-Line Papers 
  531.  
  532.  o Computational Mathematics Archive (London and South
  533.    East Centre for High Performance Computing)
  534.    http://www.lpac.qmw.ac.uk/SEL-HPC/Articles/GeneratedHtml/math.opt.html
  535.  
  536.  
  537. Q5. "How do I access the Netlib server? 
  538. ++++++++++++++++++++++++++++++++++++++++
  539.  
  540. A: If you have FTP access, you can try "ftp netlib2.cs.utk.edu",
  541. using "anonymous" as the Name, and your email address as the
  542. Password. Do a "cd (dir)" where (dir) is whatever directory was
  543. mentioned, and look around, then do a "get (filename)" on anything
  544. that seems interesting. There often will be a "README" file,
  545. which you would want to look at first. Another FTP site is
  546. netlib.att.com although you will first need to do "cd netlib" before
  547. you can cd to the (dir) you are interested in. Alternatively, you can
  548. reach an e-mail server via "netlib@ornl.gov", to which you can
  549. send a message saying "send index from (dir)"; follow the
  550. instructions you receive. This is the list of sites mirroring the
  551. netlib repository: 
  552.  
  553.  o Norway netlib@nac.no 
  554.  o England netlib@ukc.ac.uk 
  555.  o Germany anonymous@elib.zib-berlin.de 
  556.  o Taiwan netlib@nchc.edu.tw 
  557.  o Australia netlib@draci.cs.uow.edu.au 
  558.  
  559. For those who have WWW (Mosaic, etc.) access, one can access
  560. Netlib via the URL http://www.netlib.org. Also, there is, for X
  561. window users, a utility called xnetlib that is available at
  562. ftp://netlib2.cs.utk.edu/xnetlib (look at the "readme" file first). 
  563.  
  564.  
  565. Q6. "Who maintains this FAQ list?" 
  566. +++++++++++++++++++++++++++++++++++
  567.  
  568. A:  John W. Gregory     jwg@cray.com or ashbury@skypoint.com  
  569.     Applications Dept.  Cray Research, Inc., Eagan, MN 55121  612-683-3673
  570.  
  571. This article is Copyright 1995 by John W. Gregory. It may be
  572. freely redistributed in its entirety provided that this copyright
  573. notice is not removed. It may not be sold for profit or incorporated
  574. in commercial documents without the written permission of the
  575. copyright holder. Permission is expressly granted for this
  576. document to be made available for file transfer from installations
  577. offering unrestricted anonymous file transfer on the Internet. 
  578.  
  579. The material in this document does not reflect any official position
  580. taken by Cray Research, Inc. While all information in this article is
  581. believed to be correct at the time of writing, it is provided "as is"
  582. with no warranty implied. 
  583.  
  584. If you wish to cite this FAQ formally (hey, someone actually asked
  585. me this), you may use: 
  586.  
  587.   Gregory, John W. (jwg@cray.com) "Nonlinear Programming FAQ", 
  588.   (1995) Usenet sci.answers.  Available via anonymous FTP 
  589.   from rtfm.mit.edu in 
  590.   /pub/usenet/sci.answers/nonlinear-programming-faq
  591.  
  592. There's a mail server on that machine, so if you don't have FTP
  593. privileges, you can send an e-mail message to
  594. mail-server@rtfm.mit.edu containing: 
  595.  
  596.     send usenet/sci.answers/nonlinear-programming-faq
  597.  
  598. as the body of the message to receive the latest version (it is posted
  599. on the first working day of each month). This FAQ is cross-posted
  600. to news.answers and sci.op-research. If you have access to a World
  601. Wide Web server (Mosaic, Lynx, etc.), you can use 
  602. ftp://rtfm.mit.edu/pub/usenet/sci.answers/nonlinear-programming-faq.
  603. ftp://rtfm.mit.edu/pub/usenet/news.answers/nonlinear-programming-faq.
  604. ftp://rtfm.mit.edu/pub/usenet/sci.op-research/nonlinear-programming-faq.
  605.  
  606. In compiling this information, I have drawn on my own knowledge
  607. of the field, plus information from contributors to Usenet groups
  608. and the ORCS-L mailing list. I give my thanks to all those who
  609. have offered advice and support. I've tried to keep my own biases
  610. (primarily, toward the high end of computing) from dominating
  611. what I write here, and other viewpoints that I've missed are
  612. welcome. Suggestions, corrections, topics you'd like to see
  613. covered, and additional material, are all solicited. Send email to 
  614. jwg@cray.com 
  615.  
  616.  
  617. END nonlinear-programming-faq 
  618.